package Entities;
import java.util.ArrayList;

import Items.Item;

/**
 * Mob Entity.
 * @author Phil
 * 09/02/2012
 */

public class EnemyEntity extends RPGEntity
{
	private String enemyType;
	private ArrayList<Item> drops;
	
	
	/**
	 * Constructor
	 * @param incType Type of Mob
	 * 09/02/2012
	 */
	public EnemyEntity(String incType, int incID)
	{
		super(incID);
		this.enemyType = incType;
		this.drops = new ArrayList<Item>();
	}
	
	
	/**
	 * Special Ability
	 * @param target Target RPGEntity
	 * 09/02/2012
	 */
	public void doSpecialAbility(RPGEntity target)
	{
		//Logic for doing special ability.
		//@Het - Might want to look into adding another inherited class to Effect - Ability, or something of the like. Maybe even branch that off on it's own
	}
	
	/**
	 * Drops a specific Item
	 * @param dropID
	 * @return Item Object to Drop.
	 */
	public Item dropItem(int dropID)
	{
		return this.drops.get(dropID);
	}
	
	/**
	 * Drops a random Item
	 * @return Random Item Object to Drop
	 */
	public Item dropRandomItem()
	{
		int randNum = (int) Math.round(Math.random() * (int)drops.size());
		return this.drops.get(randNum);
	}
	
	/**
	 * Returns enemy Type
	 * @return String - Enemy Type
	 */
	public String getEnemyType()
	{
		return this.enemyType;
	}
	
}
